抽象類別是用來定義相同種類的物件所需要具備的共通特性
而介面的用途則是定義不同種類的物件之間,針對某種特性所需要具備的相同功能
類別能繼承一個以上的介面,而介面本身亦可以繼承多個介面
一旦類別宣告要實作介面,除了抽象型別成員或非void且沒有傳入參數的所有方法之外,
其他一律必須完整實作。
介面跟抽象類別的用途是不同的,所以要把他們用對地方,以前自己都是寫類別比較多
了解介面的好處,以後使用使用寫程式可以寫的更靈活
大力推薦詳讀allen kuo 有關interface的文章
看完之後應該會更了解介面的用途
這二個不同,自己去Google一下
但抽象類別一個好用的Design Pattern 就是部分實作
把80%抽象部分實作完成
SubClass 只需要實作20%的BizLogic就行了
不用像Interface要把100%實作出來
Interface 宣告越小越好,讓它可應用的地方越廣。所以Interface 的宣告都幾個Methods而已
Abstract Class 是越大越好,最好把全部都實作出來。SubClass 只需要幾行Code就能做出很強大的功能
Interface 還有一強大的功能,就是降耦的功能。降低Class間的耦合性。輕易做到抽換元件的功能